package com.ly.heart.domain;

import java.util.Date;

import com.baomidou.mybatisplus.annotation.IdType;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ly.common.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

/**
 * 金蝶-采购申请单物料信息对象 erp_king_purchase_apply_material_info
 *
 * @author cxl
 * @date 2024-08-31
 */
@TableName ("erp_king_purchase_apply_material_info")
@ApiModel (value = "金蝶-采购申请单物料信息", description = "金蝶-采购申请单物料信息")
@Data
public class KingPurchaseApplyMaterialEntity{

    /** 主键id */
    @TableId (type = IdType.INPUT)
    private String id;

    /** 采购申请单id */
    @ApiModelProperty ("采购申请单id")
    @TableField ("purchase_apply_id")
    @Excel (name = "采购申请单id")
    private String purchaseApplyId;

    /** 需求部门 */
    @ApiModelProperty ("需求部门")
    @TableField ("require_org")
    @Excel (name = "需求部门")
    private String requireOrg;

    /** 需求部门编码 */
    @ApiModelProperty ("需求部门编码")
    @TableField ("require_org_code")
    @Excel (name = "需求部门编码")
    private String requireOrgCode;

    /** 物料id */
    @ApiModelProperty ("物料id")
    @TableField ("material_id")
    @Excel (name = "物料id")
    private String materialId;

    /** 物料编码 */
    @ApiModelProperty ("物料编码")
    @TableField ("material_code")
    @Excel (name = "物料编码")
    private String materialCode;

    /** 物料名称 */
    @ApiModelProperty ("物料名称")
    @TableField ("material_name")
    @Excel (name = "物料名称")
    private String materialName;

    /** 规格型号 */
    @ApiModelProperty ("规格型号")
    @TableField ("material_model")
    @Excel (name = "规格型号")
    private String materialModel;

    /** 批号 */
    @ApiModelProperty ("批号")
    @TableField ("batch_num")
    @Excel (name = "批号")
    private String batchNum;

    /** 行号 */
    @ApiModelProperty ("行号")
    @TableField ("line_number")
    @Excel (name = "行号")
    private String lineNumber;

    /** 申请单位 */
    @ApiModelProperty ("申请单位")
    @TableField ("purchase_unit")
    @Excel (name = "申请单位")
    private String purchaseUnit;

    /** 单位code */
    @ApiModelProperty ("单位code")
    @TableField ("purchase_unit_code")
    @Excel (name = "单位code")
    private String purchaseUnitCode;

    /** 申请数量 */
    @ApiModelProperty ("申请数量")
    @TableField ("purchase_num")
    @Excel (name = "申请数量")
    private String purchaseNum;

    /** 批准数量 */
    @ApiModelProperty ("批准数量")
    @TableField ("approve_num")
    @Excel (name = "批准数量")
    private String approveNum;

    /** 到货日期 */
    @ApiModelProperty ("到货日期")
    @TableField ("arrival_time")
    @JsonFormat (pattern = "yyyy-MM-dd")
    @Excel (name = "到货日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date arrivalTime;

    /** 采购组织 */
    @ApiModelProperty ("采购组织")
    @TableField ("purchase_org")
    @Excel (name = "采购组织")
    private String purchaseOrg;

    /** 采购组织code */
    @ApiModelProperty ("采购组织code")
    @TableField ("purchase_org_code")
    @Excel (name = "采购组织code")
    private String purchaseOrgCode;

    /** 建议供应商 */
    @ApiModelProperty ("建议供应商")
    @TableField ("recommend_supplier")
    @Excel (name = "建议供应商")
    private String recommendSupplier;

    /** 收料组织 */
    @ApiModelProperty ("收料组织")
    @TableField ("receive_org")
    @Excel (name = "收料组织")
    private String receiveOrg;

    /** 收料组织code */
    @ApiModelProperty ("收料组织code")
    @TableField ("receive_org_code")
    @Excel (name = "收料组织code")
    private String receiveOrgCode;

    /** 计价单位 */
    @ApiModelProperty ("计价单位")
    @TableField ("pricing_unit")
    @Excel (name = "计价单位")
    private String pricingUnit;

    /** 计价数量 */
    @ApiModelProperty ("计价数量")
    @TableField ("pricing_num")
    @Excel (name = "计价数量")
    private String pricingNum;

    /** 库存单位 */
    @ApiModelProperty ("库存单位")
    @TableField ("inventory_unit")
    @Excel (name = "库存单位")
    private String inventoryUnit;

    /** 库存单位数量 */
    @ApiModelProperty ("库存单位数量")
    @TableField ("inventory_unit_num")
    @Excel (name = "库存单位数量")
    private String inventoryUnitNum;

    /** 供应商物料编码 */
    @ApiModelProperty ("供应商物料编码")
    @TableField ("supplier_material_code")
    @Excel (name = "供应商物料编码")
    private String supplierMaterialCode;

    /** 供应商物料名称 */
    @ApiModelProperty ("供应商物料名称")
    @TableField ("supplier_material_name")
    @Excel (name = "供应商物料名称")
    private String supplierMaterialName;

    /** bom版本 */
    @ApiModelProperty ("bom版本")
    @TableField ("bom_ver")
    @Excel (name = "bom版本")
    private String bomVer;

    /** 采购员 */
    @ApiModelProperty ("采购员")
    @TableField ("purchase_by")
    @Excel (name = "采购员")
    private String purchaseBy;

    /** 采购员编码 */
    @ApiModelProperty ("采购员编码")
    @TableField ("purchase_by_code")
    @Excel (name = "采购员编码")
    private String purchaseByCode;

    /** 收料部门 */
    @ApiModelProperty ("收料部门")
    @TableField ("receive_dept")
    @Excel (name = "收料部门")
    private String receiveDept;

    /** 收料部门code */
    @ApiModelProperty ("收料部门code")
    @TableField ("receive_dept_code")
    @Excel (name = "收料部门code")
    private String receiveDeptCode;

    /** 交货地址 */
    @ApiModelProperty ("交货地址")
    @TableField ("delivery_address")
    @Excel (name = "交货地址")
    private String deliveryAddress;

    /** 提前期 */
    @ApiModelProperty ("提前期")
    @TableField ("lead_time")
    @Excel (name = "提前期")
    private String leadTime;

    /** 建议采购日期 */
    @ApiModelProperty ("建议采购日期")
    @TableField ("suggested_purchase_time")
    @JsonFormat (pattern = "yyyy-MM-dd")
    @Excel (name = "建议采购日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date suggestedPurchaseTime;

    /** 单价 */
    @ApiModelProperty ("单价")
    @TableField ("price")
    @Excel (name = "单价")
    private String price;

    /** 含税单价 */
    @ApiModelProperty ("含税单价")
    @TableField ("contains_tax_price")
    @Excel (name = "含税单价")
    private String containsTaxPrice;

    /** 税率 */
    @ApiModelProperty ("税率")
    @TableField ("tax_rate")
    @Excel (name = "税率")
    private String taxRate;

    /** 价目表 */
    @ApiModelProperty ("价目表")
    @TableField ("price_list")
    @Excel (name = "价目表")
    private String priceList;

    /** 金额 */
    @ApiModelProperty ("金额")
    @TableField ("money_amount")
    @Excel (name = "金额")
    private String moneyAmount;

    /** 含税金额 */
    @ApiModelProperty ("含税金额")
    @TableField ("contains_tax_money_amount")
    @Excel (name = "含税金额")
    private String containsTaxMoneyAmount;

    /** 价格上限 */
    @ApiModelProperty ("价格上限")
    @TableField ("price_cap")
    @Excel (name = "价格上限")
    private String priceCap;

    /** 价格下限 */
    @ApiModelProperty ("价格下限")
    @TableField ("price_floor")
    @Excel (name = "价格下限")
    private String priceFloor;

    /** 录入人 */
    @ApiModelProperty ("录入人")
    @TableField ("user_id")
    @Excel (name = "录入人")
    private String userId;

    /** 更新时间 */
    @ApiModelProperty ("更新时间")
    @TableField ("change_time")
    @JsonFormat (pattern = "yyyy-MM-dd")
    @Excel (name = "更新时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date changeTime;

    /** 逻辑删除 */
    @ApiModelProperty ("逻辑删除")
    @TableField ("is_used")
    @Excel (name = "逻辑删除")
    private Integer isUsed;

    /** 备注 */
    @ApiModelProperty ("备注")
    @TableField ("remark")
    @Excel (name = "备注")
    private String remark;

    /** 创建日期 */
    @ApiModelProperty ("创建日期")
    @TableField ("create_time")
    @JsonFormat (pattern = "yyyy-MM-dd")
    @Excel (name = "创建日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createTime;


}
